Skip to main content

🔍 The embarrassing truth about our (internal) feature documentation! 🤯

· 2 min read
Lars Opitz
Passionate Software Craftsperson | Seasoned Agile Leader @ eBay

The embarrassing truth about our internal feature documentation

As the lead behind the points-based rewards system in Germany (Pluspunkte) and across Europe, I often face questions from business teams about our system's features. Being in this space for quite a long time, I typically have a good grasp of the features. …and then they ask for details 😱

Now we have to look them up in the source code as our feature documentation is - …limited. It is rather an architecture documentation and a list of features, and we avoided details on purpose as documentation and implementation typically get out of sync over time.

...and the documentation is just for us developers, isn’t it??? 🤦

This not only takes quite a long time and hence is not really efficient—it also risks our credibility with other teams.

But there is a solution in the pipeline!

Our system has a huge suite of acceptance tests which get executed as part of the unit tests (yes, that fast!). These tests are written in Gherkin notation, so “given - when - then” and are based on the Java BDD library JGiven. They describe the features in great details and with examples and offer a promising path. By converting JGiven's JSON report into a markdown file structure through a custom tool, we can seamlessly feed it into our Docusaurus documentation project.

Exciting, right? 🤔

Do you have a better idea on how to create detailed feature documentation that doesn’t get out of sync over time? Please share your thoughts in the comments.

Let's discuss!

Please let's discuss on LinkedIn.